package com.ruoyi.enterprise.domain;

import java.math.BigDecimal;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 本金计算对象 com_tx_history
 *
 * @author ruoyi
 * @date 2024-03-07
 */
public class ComTxHistory extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 编号
     */
    @Excel(name = "编号")
    private Long id;

    /**
     * 用户 id
     */
    @Excel(name = "用户 id")
    private Long userId;

    /**
     * 代码
     */
    @Excel(name = "代码")
    private String stockCode;

    /**
     * 名字
     */
    @Excel(name = "名字")
    private String stockName;

    /**
     * 持仓成本
     */
    @Excel(name = "持仓成本")
    private BigDecimal stockPriceCost;

    /**
     * 当前股价
     */
    @Excel(name = "当前股价")
    private BigDecimal stockPriceCurrent;

    /**
     * 持仓股数
     */
    @Excel(name = "持仓股数")
    private BigDecimal stockCount;

    /**
     * 变动数量
     */
    @Excel(name = "变动数量")
    private BigDecimal stockCountChangeAmount;

    /**
     * 增持持仓
     */
    @Excel(name = "增持持仓")
    private BigDecimal stockCountAfterBuy;

    /**
     * 减持持仓
     */
    @Excel(name = "减持持仓")
    private BigDecimal stockCountAfterSell;

    /**
     * 增持金额
     */
    @Excel(name = "增持金额")
    private BigDecimal stockBuyAmount;

    /**
     * 减持金额
     */
    @Excel(name = "减持金额")
    private BigDecimal stockSellAmount;

    /**
     * 增持成本
     */
    @Excel(name = "增持成本")
    private BigDecimal stockPriceCostAfterBuy;

    /**
     * 减持成本
     */
    @Excel(name = "减持成本")
    private BigDecimal stockPriceCostAfterSell;

    /**
     * 盈亏
     */
    @Excel(name = "盈亏")
    private BigDecimal gainAndLoss;

    /**
     * 清仓
     */
    @Excel(name = "清仓")
    private String clearance;

    /**
     * 备注
     */
    @Excel(name = "备注")
    private String note;

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Long getUserId() {
        return userId;
    }

    public void setStockCode(String stockCode) {
        this.stockCode = stockCode;
    }

    public String getStockCode() {
        return stockCode;
    }

    public void setStockName(String stockName) {
        this.stockName = stockName;
    }

    public String getStockName() {
        return stockName;
    }

    public void setStockPriceCost(BigDecimal stockPriceCost) {
        this.stockPriceCost = stockPriceCost;
    }

    public BigDecimal getStockPriceCost() {
        return stockPriceCost;
    }

    public void setStockPriceCurrent(BigDecimal stockPriceCurrent) {
        this.stockPriceCurrent = stockPriceCurrent;
    }

    public BigDecimal getStockPriceCurrent() {
        return stockPriceCurrent;
    }

    public void setStockCount(BigDecimal stockCount) {
        this.stockCount = stockCount;
    }

    public BigDecimal getStockCount() {
        return stockCount;
    }

    public void setStockCountChangeAmount(BigDecimal stockCountChangeAmount) {
        this.stockCountChangeAmount = stockCountChangeAmount;
    }

    public BigDecimal getStockCountChangeAmount() {
        return stockCountChangeAmount;
    }

    public void setStockCountAfterBuy(BigDecimal stockCountAfterBuy) {
        this.stockCountAfterBuy = stockCountAfterBuy;
    }

    public BigDecimal getStockCountAfterBuy() {
        return stockCountAfterBuy;
    }

    public void setStockCountAfterSell(BigDecimal stockCountAfterSell) {
        this.stockCountAfterSell = stockCountAfterSell;
    }

    public BigDecimal getStockCountAfterSell() {
        return stockCountAfterSell;
    }

    public void setStockBuyAmount(BigDecimal stockBuyAmount) {
        this.stockBuyAmount = stockBuyAmount;
    }

    public BigDecimal getStockBuyAmount() {
        return stockBuyAmount;
    }

    public void setStockSellAmount(BigDecimal stockSellAmount) {
        this.stockSellAmount = stockSellAmount;
    }

    public BigDecimal getStockSellAmount() {
        return stockSellAmount;
    }

    public void setStockPriceCostAfterBuy(BigDecimal stockPriceCostAfterBuy) {
        this.stockPriceCostAfterBuy = stockPriceCostAfterBuy;
    }

    public BigDecimal getStockPriceCostAfterBuy() {
        return stockPriceCostAfterBuy;
    }

    public void setStockPriceCostAfterSell(BigDecimal stockPriceCostAfterSell) {
        this.stockPriceCostAfterSell = stockPriceCostAfterSell;
    }

    public BigDecimal getStockPriceCostAfterSell() {
        return stockPriceCostAfterSell;
    }

    public void setGainAndLoss(BigDecimal gainAndLoss) {
        this.gainAndLoss = gainAndLoss;
    }

    public BigDecimal getGainAndLoss() {
        return gainAndLoss;
    }

    public void setClearance(String clearance) {
        this.clearance = clearance;
    }

    public String getClearance() {
        return clearance;
    }

    public void setNote(String note) {
        this.note = note;
    }

    public String getNote() {
        return note;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("createTime", getCreateTime())
                .append("updateTime", getUpdateTime())
                .append("userId", getUserId())
                .append("stockCode", getStockCode())
                .append("stockName", getStockName())
                .append("stockPriceCost", getStockPriceCost())
                .append("stockPriceCurrent", getStockPriceCurrent())
                .append("stockCount", getStockCount())
                .append("stockCountChangeAmount", getStockCountChangeAmount())
                .append("stockCountAfterCount", getStockCountAfterBuy())
                .append("stockCountAfterSell", getStockCountAfterSell())
                .append("stockBuyAmount", getStockBuyAmount())
                .append("stockSellAmount", getStockSellAmount())
                .append("stockPriceCostAfterBuy", getStockPriceCostAfterBuy())
                .append("stockPriceCostAfterSell", getStockPriceCostAfterSell())
                .append("gainAndLoss", getGainAndLoss())
                .append("clearance", getClearance())
                .append("note", getNote())
                .toString();
    }
}
